package com.ly.heart.domain.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;

/**
 * 付款单选单：
 * 选择应付单，以应付单主表为主
 */
@ApiModel ( "付款单选择应付单返回视图对象" )
@Data
public class KingInvoicePayableMenuVo {

    @ApiModelProperty ( "应付单到期日" )
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date dueTime;

    @ApiModelProperty ( "立账类型" )
    private String accountType;

    @ApiModelProperty ( "单据类型名称" )
    private String docTypeName;

    @ApiModelProperty ( "业务日期" )
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date bizTime;

    @ApiModelProperty ( "供应商Id" )
    private String supplierId;

    @ApiModelProperty ( "供应商" )
    private String supplierName;

    @ApiModelProperty ( "币别" )
    private String currencyName;

    @ApiModelProperty ( "状态" )
    private String state;

    @ApiModelProperty ( "应付单应付金额,价税合计" )
    private String totalTaxPrice;

    @ApiModelProperty ( "应付金额本位币" )
    private String totalTaxPriceCurrency;

    @ApiModelProperty ( "数量，取所有明细行数量之和，另外计算" )
    private String number;

    @ApiModelProperty ( "源单Id，本质上是应付单Id" )
    private String sourceId;

    @ApiModelProperty ( "源单单号，本质上是应付单编号" )
    private String sourceNo;

    /**
     * 以下字段用于应付单红冲应付单
     */
    @ApiModelProperty ( "源单明细行号，该字段用于应付单下推冲红" )
    private String detailLineNumber;

    @ApiModelProperty ( "源单明细行Id，该字段用于应付单下推冲红" )
    private String sourceMaterialDetailId;

    @ApiModelProperty ( "源明细行物料Id，该字段用于应付单下推冲红" )
    private String detailMaterialId;

    @ApiModelProperty ( "源明细行物料Code，该字段用于应付单下推冲红" )
    private String detailMaterialCode;

    @ApiModelProperty ( "源明细行数量，该字段用于应付单下推冲红" )
    private String detailNum;

    @ApiModelProperty ( "源明细行单价，该字段用于应付单下推冲红" )
    private String detailPrice;

    @ApiModelProperty ( "源明细行金额，该字段用于应付单下推冲红" )
    private String detailTaxPrice;

    @ApiModelProperty ( "源明细行不含税金额，该字段用于应付单下推冲红" )
    private String detailNotTaxAmount;

    @ApiModelProperty ( "源明细行税率，该字段用于应付单下推冲红" )
    private String detailRate;

    @ApiModelProperty ( "源明细行税额，该字段用于应付单下推冲红" )
    private String detailRateAmount;

    @ApiModelProperty ( "源明细行价税合计，该字段用于应付单下推冲红" )
    private String detailTotalTaxPrice;

    @ApiModelProperty ( "源明细行单位，该字段用于应付单下推冲红" )
    private String detailUnit;

    @ApiModelProperty ( "源明细行折扣率，该字段用于应付单下推冲红" )
    private String detailDiscountRate;

    @ApiModelProperty ( "源明细行折扣额，该字段用于应付单下推冲红" )
    private String detailDiscountAmount;

}
